-
Notifications
You must be signed in to change notification settings - Fork 8k
boards: mps4: Enable non-secure variant support #95105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
0076e2b
to
9e516ee
Compare
84cf3df
to
0c64bb1
Compare
0c64bb1
to
9cde5b2
Compare
d24debb
to
94e1c79
Compare
@nordicjm, could you please have another look at this and let me know your feedback? |
94e1c79
to
3d18b0a
Compare
What is the change? Split and redefine the DDR4 device tree nodes, in their respective board variants so that linker scripts automatically generates a memory section for each node. Why do we need this change? According to the official memory map of Corstone-320 available here: https://developer.arm.com/documentation/109760/0000/SSE-320-FVP/SSE-320-FVP-memory-map the non-secure world alias of DDR4 starts at 0x6000_0000 and the secure world alias starts at 0x7000_0000. Previously, the shared DDR4 node in mps4_common.dtsi listed multiple regions, but Zephyr generated a linker memory region **only** for the first address (0x6000_0000). This broke samples like `tflm_ethosu`, on Corstone-320, which expect DDR4 memory region to start at 0x7000_0000 for secure variants of the MPS4 board. Moving DDR4 definitions to per-board dts files ensures Zephyr creates correct memory regions for each variant. This also makes all the DDR4 regions available for applications to use not just the first (applications would otherwise have to use some linker magic to make those regions available in linker script). Signed-off-by: Sudan Landge <[email protected]>
The TF-M requirements document contained a hard-coded list of Python packages which is incomplete and can easily drift out of sync with the TF-M project. Replace this list with a reference to TF-M’s own ``tools/requirements.txt`` so that all required dependencies are covered. Also update the list of boards that support TF-M. Signed-off-by: Sudan Landge <[email protected]>
Use the flash layout recommended by mcuboot for consistency. Signed-off-by: Sudan Landge <[email protected]>
3d18b0a
to
59071f6
Compare
The following west manifest projects have changed revision in this Pull Request:
✅ All manifest checks OK Note: This message is automatically posted and updated by the Manifest GitHub Action. |
2bdcde5
to
61b1174
Compare
Use TF-M that has cherry-picked commits from upstream to fix compiler warnings for MPS4. Signed-off-by: Sudan Landge <[email protected]>
Zephyr's TF-M has been aligned with upstream TF-M v2.2.0, which adds support for Corstone-320 (CS320). The previous commit also updates TF-M to fix compiler warnings seen with MPS4. So, with this update, enable build and execution of non-secure variants of MPS4-based boards. Signed-off-by: Sudan Landge <[email protected]>
61b1174
to
b3de657
Compare
|
@tomi-font @nordicjm @henrikbrixandersen the concerns have been addressed and TF-M is updated to fix the warnings. Could you please have another look at this PR? |
Zephyr's TF-M has been aligned with upstream TF-M v2.2.0, which includes
Corstone-320 (CS320) support so, enable build and execution of
non-secure variants of MPS4-based boards.
In addition, temporarily disable treating warnings as error for MPS4
tests, since TF-M currently produces a few warnings that are non-trivial
to resolve. This will be revisited once the warnings are addressed
upstream.